Add rules to regenerate all shader variants
authorMatthias Clasen <mclasen@redhat.com>
Sun, 3 Sep 2017 23:58:41 +0000 (19:58 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Sun, 3 Sep 2017 23:58:41 +0000 (19:58 -0400)
We were missing rules to build the clip variants of
the shaders.

gsk/resources/vulkan/meson.build

index d3b01fae2d5e1b5d97b985b987bbe745b3c2150e..8595ccf6056b70332037a8bfe6ef86531e22ff75 100644 (file)
@@ -36,6 +36,8 @@ foreach shader: gsk_private_vulkan_shaders
 
   stage_arg = suffix == 'frag' ? '-fshader-stage=fragment' : '-fshader-stage=vertex'
   spv_shader = '@0@.@1@.spv'.format(basefn, suffix)
+  clip_spv_shader = '@0@-clip.@1@.spv'.format(basefn, suffix)
+  clip_rounded_spv_shader = '@0@-clip-rounded.@1@.spv'.format(basefn, suffix)
 
   if glslc.found()
     compiled_shader = custom_target(spv_shader,
@@ -49,8 +51,30 @@ foreach shader: gsk_private_vulkan_shaders
                                       '@INPUT@',
                                       '-o', '@OUTPUT@'
                                     ])
+    compiled_clip_shader = custom_target(clip_spv_shader,
+                                         input: shader,
+                                         output: clip_spv_shader,
+                                         build_by_default: true,
+                                         command: [
+                                           glslc,
+                                           stage_arg,
+                                           '-DCLIP_RECT',
+                                           '@INPUT@',
+                                           '-o', '@OUTPUT@'
+                                         ])
+    compiled_clip_rounded_shader = custom_target(clip_rounded_spv_shader,
+                                                 input: shader,
+                                                 output: clip_rounded_spv_shader,
+                                                 build_by_default: true,
+                                                 command: [
+                                                   glslc,
+                                                   stage_arg,
+                                                   '-DCLIP_ROUNDED_RECT',
+                                                   '@INPUT@',
+                                                   '-o', '@OUTPUT@'
+                                                 ])
   endif
   gsk_private_vulkan_compiled_shaders += files(spv_shader)
-  gsk_private_vulkan_compiled_shaders += '@0@-clip.@1@.spv'.format(basefn, suffix)
-  gsk_private_vulkan_compiled_shaders += '@0@-clip-rounded.@1@.spv'.format(basefn, suffix)
+  gsk_private_vulkan_compiled_shaders += files(clip_spv_shader)
+  gsk_private_vulkan_compiled_shaders += files(clip_rounded_spv_shader)
 endforeach